#ifndef DB_H
#define DB_H

#include <mysql/mysql.h>
#include <string>
#include <ctime>
#include <muduo/base/Logging.h>

using namespace std;

// 数据库操作类
class MySQL
{
public:
    // 初始化数据库连接
    MySQL();

    // 释放数据库连接资源
    ~MySQL();

    // 连接数据库
    bool connect();

    // 更新操作
    bool update(string sql);

    // 查询操作
    MYSQL_RES *query(string sql);

    // 获取链接
    MYSQL *getConnection();

    // 刷新一下链接的 空闲时间戳
    void refreshAliveTime();
    // 获取空闲存活时间
    clock_t getAliveTime();

private:
    MYSQL *_conn;
    clock_t _alivetime; // 记录空闲状态后的存活时间
};
#endif